package ge.testes;

import ge.util.Validadores;

import org.junit.Assert;
import org.junit.Test;

public class ValidadoresTest {

	Validadores validador = new Validadores();

	@Test
	public void validaNome() {
		Assert.assertFalse(validador.validaNome("a"));
		Assert.assertFalse(validador.validaNome("#$%&"));
		Assert.assertTrue(validador.validaNome("JaoCanaBraba"));
		Assert.assertTrue(validador.validaNome("Jao CanaBraba"));
	}

	@Test
	public void validaEmail() {
		Assert.assertFalse(validador.validaEmail("pedro"));
		Assert.assertFalse(validador.validaEmail("pedro@"));
		Assert.assertFalse(validador.validaEmail("pedro@montedecoisa."));
		Assert.assertFalse(validador.validaEmail("pedro@montedecoisa.a"));
		Assert.assertTrue(validador.validaEmail("pedro@montedecoisa.com"));
	}

	@Test
	public void validaCpf() {
		Assert.assertFalse(validador.validaCpf("a"));
		Assert.assertFalse(validador.validaCpf("fblhusdhghosdhio"));
		Assert.assertFalse(validador.validaCpf("00000000000"));
		Assert.assertTrue(validador.validaCpf("000.000.000-00"));

	}

	@Test
	public void validaEndereco() {
		Assert.assertFalse(validador.validaEndereco(""));
		Assert.assertFalse(validador.validaEndereco(" "));
		Assert.assertTrue(validador.validaEndereco("Rua vila nova da rainha"));
	}

	@Test
	public void validaTelefone() {
		Assert.assertFalse(validador.validaTelefone("asfseegr"));
		Assert.assertFalse(validador.validaTelefone("8712345678"));
		Assert.assertFalse(validador.validaTelefone("((87))1234-5678"));
		Assert.assertTrue(validador.validaTelefone("(87)1234-5678"));
	}

	@Test
	public void validaAno() {
		Assert.assertFalse(validador.validaAno("aaaa"));
		Assert.assertFalse(validador.validaAno(""));
		Assert.assertFalse(validador.validaAno("    "));
		Assert.assertTrue(validador.validaAno("1994"));
	}

	@Test
	public void validaHora() {
		Assert.assertFalse(validador.validaHora(""));
		Assert.assertFalse(validador.validaHora(":"));
		Assert.assertFalse(validador.validaHora("  :  "));
		Assert.assertFalse(validador.validaHora("1820"));
		Assert.assertFalse(validador.validaHora("24:20"));
		Assert.assertFalse(validador.validaHora("-1:8"));
		Assert.assertFalse(validador.validaHora("20:80"));
		Assert.assertFalse(validador.validaHora("5:59"));
		Assert.assertTrue(validador.validaHora("15:59"));

	}

	@Test
	public void validaCodigoDisciplina() {
		Assert.assertFalse(validador.validaCodigoDisciplina(""));
		Assert.assertFalse(validador.validaCodigoDisciplina("   "));
		Assert.assertFalse(validador.validaCodigoDisciplina("aaa"));
		Assert.assertTrue(validador.validaCodigoDisciplina("000"));
	}

}